/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.syncro.registro.beans;

import com.sun.net.httpserver.HttpServer;
import com.syncro.persistencia.PersistenceServices;
import com.syncro.registro.entities.*;
import com.syncro.registro.services.IRegistroEmergenciaService;
import com.syncro.registro.services.RegistroEmergenciaServiceMock;
import java.math.BigDecimal;
import java.net.InetAddress;
import java.util.Calendar;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.security.DeclareRoles;
import javax.annotation.security.RolesAllowed;
import javax.ejb.EJB;
import javax.ejb.SessionBean;
import javax.ejb.Stateful;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
/**
 *
 * @author Manuel Vieda
 */
@Stateful
@DeclareRoles({"Administrador", "Usuario"})

public class RegistroEmergenciaBean {

    // -----------------------------------------------
    // Constantes
    // -----------------------------------------------
    private final static String ERROR = "ERROR";

   

    // -----------------------------------------------
    // Atributos
    // -----------------------------------------------
                
    private String tipoEmergencia;
    private String descripcion;
    private String ciudad;
    private String localidad;
    private String telefono;
    private String hora;
    
    @EJB
    private IRegistroEmergenciaService registroEmergenciaService = new RegistroEmergenciaServiceMock();

    // -----------------------------------------------
    // Constructor
    // -----------------------------------------------


    /** Creates a new instance of RegistroEmergenciaBean */
    public RegistroEmergenciaBean() {

    }


    // -----------------------------------------------
    // Métodos
    // -----------------------------------------------
    @RolesAllowed({"Administrador"})
    public int registrarEmergencia(){
        
        Date fecha = new Date(System.currentTimeMillis());

       


        registroEmergenciaService.ingresarRegistro(fecha, System.currentTimeMillis(), tipoEmergencia, descripcion, ciudad, localidad, (short)12345);
        System.out.println("REGISTRO OK");
        return 1;
        
        /*

           Date fecha = new Date();
           return registroEmergenciaService.ingresarRegistro(fecha, Long.valueOf(hora), tipoEmergencia, descripcion, ciudad, localidad, Short.parseShort(telefono));
           */
           /*

            
            
            Calendar cal = Calendar.getInstance();
            Date fecha = new Date(Calendar.YEAR, Calendar.MONTH, Calendar.DATE);
            int n = registroEmergenciaService.ingresarRegistro(fecha, cal.getTimeInMillis(), "Incendio", "Fuego", "Bogota", "Suba", (short)12345);
            return String.valueOf(n);
         } catch (Exception ex) {
            FacesContext context = FacesContext.getCurrentInstance();
			String msg = ex.getMessage();
			FacesMessage fm = new FacesMessage(msg);
			fm.setSeverity(FacesMessage.SEVERITY_ERROR);
			context.addMessage(null, fm);
                Logger.getLogger(RegistroEmergenciaBean.class.getName()).log(Level.SEVERE, null, ex);
            return ERROR;
        }
            * */

    }


        public String getCiudad() {
        return ciudad;
    }

    public void setCiudad(String ciudad) {
        this.ciudad = ciudad;
    }

    public String getDescripcion() {
        return descripcion;
    }

    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    public String getHora() {
        return hora;
    }

    public void setHora(String hora) {
        this.hora = hora;
    }

    public String getLocalidad() {
        return localidad;
    }

    public void setLocalidad(String localidad) {
        this.localidad = localidad;
    }

    public IRegistroEmergenciaService getRegistroEmergenciaService() {
        return registroEmergenciaService;
    }

    public void setRegistroEmergenciaService(IRegistroEmergenciaService registroEmergenciaService) {
        this.registroEmergenciaService = registroEmergenciaService;
    }

    public String getTelefono() {
        return telefono;
    }

    public void setTelefono(String telefono) {
        this.telefono = telefono;
    }

    public String getTipoEmergencia() {
        return tipoEmergencia;
    }

    public void setTipoEmergencia(String tipoEmergencia) {
        this.tipoEmergencia = tipoEmergencia;
    }



}
